1. Field of the Invention
The present invention relates to a packet switch, more particularly, a packet switch for transmitting or receiving IP (Internet Protocol) packets from an ATM line or to an ATM line, as well as for exchanging IP packets between ATM lines according to a network layer routing protocol.
2. Description of the Related Art
FIG. 2 shows a packet switch 1a connected to a plurality of ATM terminals 2a, 2c, and another packet switch 1b via ATM lines 3 (3a, 3b, 3c) and 4 (4a, 4b, 4c) respectively. The packet switch is used for relaying IP packets received by each ATM terminal as ATM cells to another ATM line according to a destination address.
The packet switch 1a comprises a routing controller 5 composed of a processor 51 provided with a routing table 52, as well as a plurality of line interfaces 6 (6a to 6c) connected to the routing controller 5 via an internal bus 7. Each ATM terminal 2 (2a to 2b) includes a processor 21, a memory 22, and an ATM interface 23. Reference numerals 3 (3a to 3c) and 4 (4a to 4c) are one-way ATM lines connected to the line interface 6 of the packet switch 1a respectively and used to enter and output ATM cells.
If an IP packet is to be transmitted from an ATM terminal 2a, for example, the processor 21 reads transmission data 110 from the memory 22 and transmits a packet 100 to the ATM interface 23. The packet 100 includes an IP header 120, which is added to the data 110 according to the format of the IP (Internet Protocol) packet shown in FIG. 3, before the processor 21 transmits the packet 100 to the ATM interface 23.
The ATM interface 23 then adds the 8-byte first control information to the start of the packet 100 in the format shown in FIG. 4 according to both IETF (Internet Engineering Task Force) and RFC (Request for Comments), as well as adds the second control information to the end of the user information 200 consisting of the above control information and the packet 100 in the format of the CPCS (Common Part Convergence Sublayer) of the AAL (ATM Adaptation Layer) 5 shown in FIG. 5. The format conforms to the ITU-T (International Telecommunication Union-Telecommunication Standardization Sector) recommendation 1.363. The first control information consists of an LLC (Logical Link Control) part 130 including a 1-byte DSAP (Destination Service Access Point) and a 1-byte SSAP (Source Service Access Point); and an SNAP (Subnetwork Attachment Point) part including a 3-byte OUI (Organizationally Unique Identifier) and a 3-byte PID 25 (Protocol Identifier). The second control information consists of a padding field 201 used to adjust a packet length so that a full length of each packet becomes a multiple of 48; a 2-byte reserved field 202; a 2-byte packet length field 203 used to indicate a length of the above user information 200; and a 4-byte CRC field 204.
The ATM interface 23 divides an IP packet to which both first and second control information is added into a plurality of 48-byte information blocks thereby to generate ATM cells 300, each consisting of a 48-byte payload 310 including one of said 48-byte information blocks and a 5-byte ATM cell header 320 in the format shown in FIG. 6. The ATM interface 23 then transfers the generated ATM cells 300 to the ATM line 3a. At this time, the ATM interface assigns a VPI (Virtual Path Identifier) value and a VCI (Virtual Channel Identifier) value for each pair of a source IP address and a destination IP address included in each IP packet header and sets the values in both VPI and VCI fields of the ATM header 320. In the ATM header shown in FIG. 6, the GFC field includes general flow control information used to prevent conflict between cells on a bus when the ATM switch is connected to a LAN, etc. The PTI field includes a payload type indicating a purpose for using the payload 310. The CLP field includes cell loss priority information indicating whether to transfer object cells without a loss. The HEC field includes header error control information.
The ATM interface 23 transmits a management cell every fixed number of data cells (user cells) if the ABR (Available Bit Rate) service is used or if the performance monitoring function of the OAM (Operation, Administration, and Maintenance), which is a network management function group is used.
FIG. 7 shows how a management cell is transmitted when the ABR service is used. A D-box (e.g., 300-2, 300-3, 300-4, 300-6, . . . ) indicates a data cell and an RM-box (e.g., 301-1, 301-5) indicates a resource management cell. Those cells are shown in FIG. 7 from left to right in order of transmission times. In FIG. 7, one resource management cell is transmitted every 3 data cells. The resource management cell (RM cell) has a value xe2x80x9c110xe2x80x9d set in the PTI (Payload Type Indication) field of the ATM header 320. In the 48 bytes of the payload 310 is included management information in the format shown in FIG. 8.
In FIG. 8, ID indicates a Protocol Identifier. ER stands for Explicit cell Rate, CCR stands for Current Cell Rate, MCR stands for Minimum Cell Rate, QL stands for Queue Length, SN stands for Sequence Number, and CRC stands for Cyclic Redundancy Check respectively. A resource management cell includes control information set in the 7th byte message type field in the format shown in FIG. 9.
In FIG. 9, the DRI is a bit indicating whether an object RM cell is transferred forward or backward. The BN is a bit indicating whether an object RM cell is generated at a source node or at a non-source node. The CI is a bit indicating whether or not a congestion is generated. The NI is a bit indicating whether or not an additive increase is allowed. The RA is a resource allocation bit.
Back to FIG. 2. The line interface 6a, when receiving a cell from the ATM line 3a, checks the PTI field of the received cell ATM header to know whether the received cell is a management cell such as an OAM cell, a resource management cell, etc. If the received cell is a management cell such as an OAM cell, a resource management cell, etc., the line interface 6a takes out the cell from the cell flow and processes the cell as needed. If the received cell is an OAM cell for error management or a resource management cell for ABR service, the line interface 6a processes the cell as needed, then transfers the cell to the ATM line 4a. If the received cell is a data cell, the line interface 6a combines the payloads 310 of a series of received cells to recompose the original IP packet and transmits the IP packet to the routing controller 5 via the internal bus 7.
The processor 51 of the routing controller 5 stores the routing information indicating the correspondence between the destination IP address of the IP packet to be relayed and the output line interface 6 for receiving the IP packet according to, for example, the OSPF (Open Shortest Path First). The processor 51, when receiving an IP packet from the line interface 6a, checks the IP header 120. If the 12 header is illegal, the processor 51 discards it. The processor 51 then reduces the value in the field for time to live in the IP header by one only for IP packets having a valid IP header respectively. Then, the processor 51 searches the routing table 52 to find the output line interface 6c corresponding to the destination IP address and transmits the IP packet to the output line interface 6c via the internal bus 7. If an option field is added to the IP header and the value of the first byte in the option field is within 32 to 63, 96 to 127, 160 to 191, or 224 to 255, the processor 51 discards the IP packet received from the line interface 2a. 
In the line interface 6c, the processor 51 sets additional information just like in the ATM terminal 2a before or after receiving an IP packet from the routing controller 5, then converts the received IP packet to a plurality of ATM cells and transmits those ATM cells to the output ATM line 4c. Since the output line interface 4c stores VPI and VCI values assigned for output cells beforehand for each pair of source IP address and destination IP address of the IP packet, those assigned VPI and VCI values are set in the VPI and VCI fields of each of the ATM cells.
As described above, in a related art packet switch, a management cell such as an OAM cell, a resource cell, etc. received from an input side ATM line is terminated at the input side line interface 6a and looped back at an ATM terminal which is the source of the IP packet as shown in FIG. 10. A management cell transmitted from an output side line interface 6c to an output ATM line 4c is looped back to the input ATM line 3c at the destination terminal 2b, so that the management cell is returned to the line interface 6c. In other words, in the related art packet switch, a management cell inserted in an ATM cell flow used to transfer IP packet information is not relayed to the destination side line interface via the packet switch. Consequently, it is impossible for each ATM terminal or another ATM switch connected to an input ATM line to know the state of an error and a congestion of the ATM line on the destination IP packet switch. In the same way, the related art packet switch has been confronted with a problem that it is impossible for each ATM terminal or another ATM switch connected to an output ATM line to know the state of an error and a congestion of the ATM line on the IP packet source side.
Under such the circumstances, it is an object of the present invention to provide a packet switch provided with a plurality of line interfaces connected to an ATM line respectively and usable for relaying each management cell received by a line interface to another line interface.
It is another object of the present invention to provide a packet switch that can relay each management cell received together with data cells coexisting in a data cell flow (or a user cell flow) from an ATM line to another ATM line while keeping a relative positional relationship with the data flow.
It is further another object of the present invention to provide a packet switch that can relay a specific management cell specified for each connection from a line interface to another line interface.
It is further another object of the present invention to provide a communication network enabling a terminal equipment connected to a packet switch via an ATM line to know the state of the ATM line on another terminal equipment side, which is the other party of the communication.
It is further another object of the present invention to provide a method for relaying management cells, used in a packet switch provided with a plurality of line interfaces and enabling each of the line interfaces to convert data cells received from an ATM line to an IP packet and relay the IP packet to a line interface specified with its IP header, as well as each line interface to convert an IP packet received from another line interface to ATM cells to be transmitted to an output ATM line.
In order to achieve the above objects of the present invention, the packet switch of the present invention comprises a plurality of line interfaces each of which is coupled with a pair of input and output ATM lines so as to communicate ATM cells with said input and output ATM lines, and a routing unit coupled with said line interfaces, so as to receive data packets from each of said line interfaces and to selectively transfer the received data packets to one of said line interfaces specified by the header information of said data packets, wherein at least two of said line interfaces are configured to selectively convert a group of ATM cells received from said input ATM line associated therewith to one of a first type of data packet in which ATM headers of said ATM cells are removed and a second type of data packet in which ATM headers of said ATM cells are remained and to convert first and second type of data packets received from said routing unit to a group of ATM cells to be transmitted to the output ATM line associated therewith.
More concretely, the first type of data packet comprises a packet header including information to identify the first type packet and an information field in which a series of ATM payloads extracted from sad ATM cells are disposed continuously. The second type of data packet comprises a packet header including information to identify the second type packet and an information field in which a series of ATM cells are disposed continuously. The second type of data packet preferably includes at least one data cell and at least one management cell in its information field.
One feature of the present invention resides in that the packet switch comprises a plurality of line interfaces coupled with a pair of input and output ATM lines respectively and a routing unit for relaying IP (Internet Protocol) packets received from each of the line interfaces to any one of the line interfaces specified by the packet header information of said respective IP packets, and each of the line interfaces is configured to convert a group of ATM cells received from the input ATM line associated therewith to an IP packet and pass the IP packet to said routing unit, to convert an IP packet received from said routing unit to a group of ATM cells and send out the ATM cells to the output ATM line associated therewith, and to selectively incorporate a management cell received from the input ATM line in said IP packet to be passed to said routing unit.
More in detail, said management cell is inserted in an IP packet together with a group of data cells, which belongs to the same connection as that of the management cell. The IP packet including the management cell comprises a packet header and an information field in which the management cell with an ATM header and a group of data cells with respective ATM headers are disposed in order they are received.
In order to selectively transfer management cells among line interfaces, each of the line interfaces may be provided with a memory for storing information indicating whether a management cell should be relayed to another line interface in corresponding to each connection so that each of said line interface can refer the memory when a management cell is received from the input ATM line to determine the received management cell should be incorporated into an IP packet.
According to a preferred embodiment of the present invention, each of the line interfaces is provided with a memory for specifying the type of management cells to be relayed to another line interface in corresponding to each connection so that limited type of management cells specified by the above memory are incorporated into IP packets to be relayed to the other line interface.
Another aspect of the present invention resides in that the packet switch comprises a plurality of line interfaces coupled with a pair of input and output lines respectively, and a routing unit for relaying packets among said line interfaces, and each of said line interfaces is provided with means for determining which management cell should be relayed with respect to each connection in the input line associated therewith, memory means for storing data cells and a management cell received from the input line in order they are received with respect to each connection; means for extracting a packet header carried by the first cell of respective data packets, means for composing when the last cell of a packet is received an internal packet having said extracted packet header and an information field including at least one data cell and at least one management cell read out from said memory means and, for passing the internal packet to the routing unit, means for decomposing an internal packet having at least one data cell and at least one management cell received from the routing unit into a plurality of cells, header converting means for correcting the connection identifier in the ATM header of respective decomposed cells based on the header information of said internal packet received from said routing unit, and means for sequentially transmitting said data cell and management cell to said output line associated therewith after said ATM header correction.
According to the present invention, a method is provided for relaying management cells in a packet switch having a plurality of line interfaces coupled with a pair of input and output ATM lines respectively, each of the line interfaces being configured to receive ATM cells consisting of a cell header and a payload respectively from the input ATM line associated therewith, and to convert a series of received ATM cells belonging to a same original packet to a first type of data packet having a packet header and an information field in which the payloads of the ATM cells are disposed continuously, said first type of packet being transferred to another line interface specified by the packet header and converted to ATM cells by said another line interface thereby to transmit to the output ATM line of the line interface, the method comprises the steps of (a) converting a series of ATM cells including at least one management cell received from the input ATM line of first one of said plurality of the line interfaces to a second type of data packet having a packet header and an information field in which the series of the ATM cells are disposed continuously, (b) transferring the second type of data packet to a second one of said plurality of line interface, (c) enabling the second line interface to extract the series of ATM cells from the information field of the second type of data packet, to update each of cell headers of said extracted ATM cells, and to transmit the ATM cells to tile output ATM line of the second line interface.
According to the present invention, the packet switch can relay management cells, for example, as shown in FIG. 1, so it is possible for an ATM terminal or another packet switch connected to one of the output ATM lines of the packet switch to know the state of an error or congestion on the source side ATM line. In addition, it is also possible for an ATM terminal or another packet switch connected to one of input ATM lines of the packet switch to know the state of an error or congestion on the destination side ATM line.